#ifndef UESTUDIO_MAINFRAME_H
#define UESTUDIO_MAINFRAME_H

#include <wx/wx.h>
#include <wx/treectrl.h>
#include <wx/propgrid/propgrid.h>
#include <wx/stc/stc.h>
#include <wx/splitter.h>

class MainFrame : public wxFrame {
public:
    MainFrame(const wxString& title);
    virtual ~MainFrame();
    
private:
    void CreateMenus();
    void CreateThreePaneLayout();
    void CreateStatusBar();
    
    // 三布局组件
    wxTreeCtrl* m_projectTree;
    wxPropertyGrid* m_propertyGrid;
    wxStyledTextCtrl* m_codeEditor;
    wxSplitterWindow* m_mainSplitter;
    wxSplitterWindow* m_rightSplitter;
    
    // 菜单事件处理
    void OnMenuFileOpenWorkspace(wxCommandEvent& event);
    void OnMenuFileExit(wxCommandEvent& event);
    void OnMenuHelpAbout(wxCommandEvent& event);
    
    wxDECLARE_EVENT_TABLE();
};

#endif // UESTUDIO_MAINFRAME_H
